package com.thp.factory.simple;

import com.thp.factory.Audi;
import com.thp.factory.Benz;
import com.thp.factory.Bmw;
import com.thp.factory.Car;
/**
 * 简单工厂虽然能够实现目的
 * 但是管理起来是不方便的
 * Spring中的工厂模式:
 *  BeanFactory
 * 	 生产的对象是  Bean
 *   Bean是有很多种的:
 *   		单例的Bean   被代理过的Bean  
 *   		最原始的Bean(原型Bean) List类型的Bean
 *   		作用域不同的Bean
 *  这么多类型的Bean,用一个工厂也是可以搞定的,全部都写在一块						
 *  	Spring 中的每一种Bean的生产的逻辑都是不一样的
 *  	如果用简单工厂模式那么代码会非常长 还会 乱  不利于维护
 *  
 *  
 * @author Tommy
 *
 */
public class SimpleFactory {
	// 实现统一管理,专业化管理
	// 如果没有工厂模式,小作坊,没有执行标准
	public Car getCar(String name) {
		if("BMW".equalsIgnoreCase(name)) {
			return new Bmw();
		} else if ("BENZ".equalsIgnoreCase(name)) {
			return new Benz();
		} else if("Audi".equals(name)) {
			return new Audi();
		} 
		System.out.println("无该产品");
		return null;
	}
}
